package com.briup.pts.service;

import com.briup.pts.domain.bean.Animal;
import com.briup.pts.domain.vo.AnimalVO;
import com.github.pagehelper.PageInfo;

import java.util.List;

public interface AnimalService {

    /**
     * 根据条件分页查询动物信息
     * @param pageNum 当前页码
     * @param pageSize 页面大小
     * @param aHealthy 动物健康状态
     * @param aGender 动物性别
     * @return 符合条件的分页数据
     */
    PageInfo<AnimalVO> pageQuery(Integer pageNum,Integer pageSize,
                                 String aHealthy,String aGender);

    /**
     * 根据id查询指定动物的详细信息
     * @param animalId 动物id
     * @return 动物信息
     */
    AnimalVO queryById(String animalId);

    /**
     * 根据id删除动物
     * @param animalId 待删除动物的id
     */
    void deleteById(String animalId);

    /**
     * 根据id批量删除动物
     * @param animalIds 待删除动物的id集合
     */
    void batchDelete(List<String> animalIds);

    void saveOrUpdate(Animal animal);

    /**
     * 根据动物id生成二维码
     * @param animalId 动物id
     */
    void qrCode(String animalId);
}
